package com.lighthouse.common.tag.mapper;

import java.util.List;
import com.lighthouse.common.tag.domain.KnowledgeTag;
import com.lighthouse.common.tag.domain.KnowledgeTagTree;
import com.ruoyi.common.core.domain.entity.SysDictData;

/**
 * 基础标签Mapper接口
 * 
 * @author ysz
 * @date 2023-03-22
 */
public interface KnowledgeTagMapper
{
    /**
     * 查询基础标签
     * 
     * @param tagId 基础标签主键
     * @return 基础标签
     */
    public KnowledgeTag selectBaseTagByTagId(Long tagId);

    /**
     * 查询基础标签列表
     * 
     * @param baseTag 基础标签
     * @return 基础标签集合
     */
    public List<KnowledgeTag> selectBaseTagList(KnowledgeTag baseTag);

    /**
     * 查询基础标签列表-树形
     *
     * @return 基础标签集合
     */
    public List<KnowledgeTagTree> selectBaseTagTree();

    /**
     * 新增基础标签
     * 
     * @param baseTag 基础标签
     * @return 结果
     */
    public int insertBaseTag(KnowledgeTag baseTag);

    /**
     * 修改基础标签
     * 
     * @param baseTag 基础标签
     * @return 结果
     */
    public int updateBaseTag(KnowledgeTag baseTag);

    /**
     * 删除基础标签
     * 
     * @param tagId 基础标签主键
     * @return 结果
     */
    public int deleteBaseTagByTagId(Long tagId);

    /**
     * 批量删除基础标签
     * 
     * @param tagIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBaseTagByTagIds(Long[] tagIds);

    /**
     * 查询基础标签
     *
     * @param tagIds 基础标签主键
     * @return 基础标签
     */
    public List<KnowledgeTag> selectBaseTagByTagIds(Long[] tagIds);
}
